/*============================================================================*/
/*  Copyright (C) 2009-2014, iSOFT INFRASTRUCTURE SOFTWARE CO.,LTD.
 *  
 *  All rights reserved. This software is iSOFT property. Duplication 
 *  or disclosure without iSOFT written authorization is prohibited.
 *  
 *  @file       <Dcm_Cfg.c>
 *  @brief      <>
 *  
 *  <MCU:TC1782>
 *  
 *  @author     <>
 *  @date       <2016-08-31 13:16:48>
 */
/*============================================================================*/


/******************************* references ************************************/
#include "Dcm_Types.h"
#include "Dcm_CfgType.h"
#include "Rte_Dcm.h"
#include "Dcm_Cfg.h"
#include "Dem_Dcm.h"
#include "UDS.h"

#if (DCM_OBD_FUNC_ENABLED == STD_ON)
    #include "OBD.h"
#endif

#define   DCM_START_SEC_CONST_UNSPECIFIED
#include  "MemMap.h"
/**********************************************************************
 ***********************DcmGeneral Container***************************
 **********************************************************************/
CONST(Dcm_GeneralCfgType,DCM_CONST)Dcm_GeneralCfg =
{
    DCM_DEV_ERROR_DETECT,
    DCM_REQUEST_INDICATION_ENABLED,
    DCM_RESPOND_ALL_REQUEST,
    DCM_VERSION_INFO_API,
    10u
};


/**********************************************************************
 ***********************DSP Container**********************************
 *********************************************************************/
/************************************************
 ****DcmDspSecurityRow container(Multiplicity=0..31)****
 ************************************************/
STATIC  CONST(Dcm_DspSecurityRowType,DCM_CONST)Dcm_DspSecurityRow[2] =
{
    { /* locked */
        0u,      /*DcmDspSecurityLevel*/
        4u,      /*DcmDspSecuritySeedSize*/
        4u,      /*DcmDspSecurityKeySize*/
        0u,      /*DcmDspSecurityADRSize*/
        3u,      /*DcmDspSecurityNumAttDelay*/
        0u,      /*DcmDspSecurityNumAttLock*/
        10000u,  /*DcmDspSecurityDelayTime,10s */
        0u,   	  /*DcmDspSecurityDelayTimeOnBoot*/
        {NULL_PTR,NULL_PTR}
    },
    { /* unlocked_1 */
        1u,      /*DcmDspSecurityLevel*/
        4u,      /*DcmDspSecuritySeedSize*/
        4u,      /*DcmDspSecurityKeySize*/
        0u,      /*DcmDspSecurityADRSize*/
        3u,      /*DcmDspSecurityNumAttDelay*/
        0u,      /*DcmDspSecurityNumAttLock*/
        10000u,  /*DcmDspSecurityDelayTime,10s */
        0u,   	  /*DcmDspSecurityDelayTimeOnBoot*/
        {Rte_CompareKey,Rte_GetSeed}
    }
};

/************************************************
 ****DcmDspSecurity container(Multiplicity=1)****
 ************************************************/
STATIC  CONST(Dcm_DspSecurityType,DCM_CONST)Dcm_DspSecurity =
{
    &Dcm_DspSecurityRow[0],
    2u
};

/************************************************
 ****DcmDspSessionRow container(Multiplicity=0..31)
 ************************************************/
STATIC  CONST(Dcm_DspSessionRowType,DCM_CONST)Dcm_DspSessionRow[3] =
{ 
    { /* RQ_DefaultSession_Start */
        1u,
        50u,
        5000u
    },
    { /* RQ_ProgrammingSession_Start */
        2u,
        50u,
        5000u
    },
    { /* RQ_ExtendedDiagnosticSession_Start */
        3u,
        50u,
        5000u
    }
};

/************************************************
 *******Dcm_DspSession container(Multiplicity=1)*
 ************************************************/
STATIC  CONST(Dcm_DspSessionType,DCM_CONST)Dcm_DspSession =
{
    &Dcm_DspSessionRow[0],
    3u,
};

/************************************************
 ******DcmDspDid container(Multiplicity=0..*)****
 ***********************************************/
/******************************************
 *DcmDspDidRead container configration
 *****************************************/
/*DID = Read*/
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Read_SecRefCfg[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Read_SesRefCfg[2] = {1,3};
STATIC  CONST(Dcm_DspDidReadType,DCM_CONST)Dcm_Read_ReadContainerCfg =
{
    2u,
    &Dcm_Read_Read_SecRefCfg[0],
    2u,
    &Dcm_Read_Read_SesRefCfg[0],
};
/*DID = Read_Write*/
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Write_Read_SecRefCfg[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Write_Read_SesRefCfg[2] = {1,3};
STATIC  CONST(Dcm_DspDidReadType,DCM_CONST)Dcm_Read_Write_ReadContainerCfg =
{
    2u,
    &Dcm_Read_Write_Read_SecRefCfg[0],
    2u,
    &Dcm_Read_Write_Read_SesRefCfg[0],
};

/*******************************************
 *DcmDspDidWrite container configuration,
 which is in the DcmDspDidInfo container
 ******************************************/
/*DID = Write*/
STATIC  CONST(uint8,DCM_CONST)Dcm_Write_Write_SecRefCfg[1] = {1};
STATIC  CONST(uint8,DCM_CONST)Dcm_Write_Write_SesRefCfg[1] = {3};
STATIC  CONST(Dcm_DspDidWriteType,DCM_CONST)Dcm_Write_WriteContainerCfg=
{
    1u,
    &Dcm_Write_Write_SecRefCfg[0],
    1u,
    &Dcm_Write_Write_SesRefCfg[0],
};
/*DID = Read_Write*/
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Write_Write_SecRefCfg[1] = {1};
STATIC  CONST(uint8,DCM_CONST)Dcm_Read_Write_Write_SesRefCfg[1] = {3};
STATIC  CONST(Dcm_DspDidWriteType,DCM_CONST)Dcm_Read_Write_WriteContainerCfg=
{
    1u,
    &Dcm_Read_Write_Write_SecRefCfg[0],
    1u,
    &Dcm_Read_Write_Write_SesRefCfg[0],
};

/*******************************************
 *DcmDspDidControl container configuration,
 which is in the DcmDspDidInfo container
 ******************************************/ 



/*******************************************
 **DcmDspDidAccess container configration**
 ******************************************/ 
/*DID = Write*/
STATIC  CONST(Dcm_DspDidAccessType,DCM_CONST)Dcm_Write_AccessCfg =
{
    NULL_PTR,
    NULL_PTR,
    &Dcm_Write_WriteContainerCfg
}; 
/*DID = Read*/
STATIC  CONST(Dcm_DspDidAccessType,DCM_CONST)Dcm_Read_AccessCfg =
{
    NULL_PTR,
    &Dcm_Read_ReadContainerCfg,
    NULL_PTR
}; 
/*DID = Read_Write*/
STATIC  CONST(Dcm_DspDidAccessType,DCM_CONST)Dcm_Read_Write_AccessCfg =
{
    NULL_PTR,
    &Dcm_Read_Write_ReadContainerCfg,
    &Dcm_Read_Write_WriteContainerCfg
};

/******************************************
 *DcmDspDidInfo container Configuration *****
 ******************************************/
STATIC  CONST(Dcm_DspDidInfoType,DCM_CONST)Dcm_DspDidInfoCfg[3] =
{
    { /* Write */
        FALSE,	/*true = DID can be dynamically defined, false = DID can not bedynamically defined*/
        TRUE,    /*true = datalength of the DID is fixed, false = datalength of the DID is variable*/
        0u,      /*If Scaling information service is available for this DID, it provides the size of the scaling information.*/
        &Dcm_Write_AccessCfg
    },
    { /* Read */
        FALSE,	/*true = DID can be dynamically defined, false = DID can not bedynamically defined*/
        TRUE,    /*true = datalength of the DID is fixed, false = datalength of the DID is variable*/
        0u,      /*If Scaling information service is available for this DID, it provides the size of the scaling information.*/
        &Dcm_Read_AccessCfg
    },
    { /* Read_Write */
        FALSE,	/*true = DID can be dynamically defined, false = DID can not bedynamically defined*/
        TRUE,    /*true = datalength of the DID is fixed, false = datalength of the DID is variable*/
        0u,      /*If Scaling information service is available for this DID, it provides the size of the scaling information.*/
        &Dcm_Read_Write_AccessCfg
    }
};

/**********************************************
 *DcmDspDid container configration*************
 **********************************************/
STATIC  CONST(Dcm_DspDidType,DCM_CONST)Dcm_DspDidCfg[87] =
{ 
    { /* RQ_Support_data_ID_1_Read */
        0x1100,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1100,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1100,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_B_voltage_Read */
        0x1101,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1101,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1101,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_2_5V_voltage_Read */
        0x1103,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1103,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1103,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_6V_voltage_Read */
        0x1104,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1104,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1104,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_30V_voltage_Read */
        0x1105,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1105,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1105,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGSW_Status_Read */
        0x1106,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1106,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1106,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Battery_Voltage_BMS_CAN_Read */
        0x1107,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1107,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1107,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_V_Phase_current_deviation_Read */
        0x110C,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_110C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_110C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Status_Parking_Brake_Left_1_Read */
        0x110D,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_110D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_110D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_PWM_MCU_TM_CAN_Read */
        0x110E,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_110E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_110E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_MG_speed_Read */
        0x110F,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_110F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_110F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_flag_Read */
        0x1110,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1110,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1110,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_temperature_Read */
        0x1111,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1111,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1111,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_temp_maximum_temperature_Read */
        0x1112,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1112,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1112,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_temp_start_temperature_Read */
        0x1113,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1113,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1113,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_current_effective_value_when_IGBT_temp_is_maximum_Read */
        0x1114,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1114,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1114,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Inverter_high_voltage_Read */
        0x1116,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1116,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1116,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_3_phase_current_absolute_peak_value_Read */
        0x1117,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1117,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1117,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Requested_command_value_of_motor_torque_Read */
        0x1118,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1118,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1118,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Estimated_value_of_motor_torque_Read */
        0x1119,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1119,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1119,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_MG_temperature_Read */
        0x111A,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_111A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_111A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Requested_command_value_of_motor_rotation_speed_Read */
        0x111C,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_111C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_111C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Carrier_frequency_Read */
        0x111D,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_111D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_111D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_lower_torque_limit_effective_value_Read */
        0x111E,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_111E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_111E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_higher_torque_limit_effective_value_Read */
        0x111F,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_111F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_111F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Support_data_ID2_Read */
        0x1120,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1120,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1120,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_torque_command_value_The_final_command_value_that_determine_motor_current_Read */
        0x1121,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1121,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1121,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Feedback_calculation_mode_Current_FB_or_torque_FB_Read */
        0x1122,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1122,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1122,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_current_Effective_value_Read */
        0x1123,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1123,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1123,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_MG_control_mode_Torque_or_rotation_speed_Read */
        0x1124,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1124,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1124,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State_transition_number_Read */
        0x1125,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1125,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1125,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Resolver_abnormal_circuit_open_Read */
        0x1126,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1126,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1126,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Resolver_abnormality_Read */
        0x1127,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1127,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1127,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Resolver_angle_for_control_Read */
        0x1128,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1128,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1128,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Inverter_coolant_temperature_maximum_temperature_peak_within_diagnosis_Read */
        0x1129,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1129,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1129,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_ResolverOffset_Read */
        0x112A,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Resolver_angle_for_diagnosis_Read */
        0x112B,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Position_for_motor_control_Read */
        0x112C,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Speed_Read */
        0x112D,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Engine_speed_Read */
        0x112E,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Estimated_load_torque_Read */
        0x112F,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_112F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_112F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_state_Read */
        0x1130,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1130,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1130,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_lower_torque_limit_CAN_received_value_Read */
        0x1131,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1131,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1131,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_higher_torque_limit_CAN_received_value_Read */
        0x1132,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1132,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1132,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Power_state_Read */
        0x1133,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1133,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1133,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Current_sensor_abnormality_Read */
        0x1134,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1134,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1134,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State1_Read */
        0x1135,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1135,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1135,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State2_Read */
        0x1136,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1136,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1136,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State3_1_Read */
        0x1137,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1137,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1137,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State4_Read */
        0x1138,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1138,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1138,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State5_Read */
        0x1139,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1139,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1139,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_State6_Read */
        0x113A,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_113A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_113A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_lock_flag_Read */
        0x113B,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_113B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_113B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Inverter_coolant_temperature_Read */
        0x113D,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_113D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_113D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Support_data_ID3_Read */
        0x1140,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1140,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1140,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_TMPowerLimit_Read */
        0x1141,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1141,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1141,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_state7_Read */
        0x1142,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1142,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1142,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_TMFailureStatus_Read */
        0x1143,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1143,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1143,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_MCUCoolingRequest_Read */
        0x1144,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1144,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1144,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Inverter_coolant_temperature_maximum_temperature_peak_during_start_Read */
        0x1145,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1145,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1145,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Motor_estimated_temperature_Read */
        0x1146,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1146,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1146,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_U_Phase_current_Read */
        0x1147,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1147,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1147,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_V_Phase_current_Read */
        0x1148,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1148,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1148,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_W_Phase_current_Read */
        0x1149,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1149,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1149,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_V_Phase_current_deviation2_Read */
        0x114A,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114A,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Current_sensor_abnormality_Out_of_range_Detection_flag1_Read */
        0x114B,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114B,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Current_sensor_abnormality_Out_of_range_Detection_flag2_Read */
        0x114C,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Current_sensor_abnormality_Out_of_range_Detection_flag3_Read */
        0x114D,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_5V_Current_Supply_voltage_Read */
        0x114E,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114E,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_5V_Temperature_Supply_voltage_Read */
        0x114F,         /*ECU Software Number of Supplier*/
        2u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_114F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_114F,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_U_temperature_Read */
        0x1150,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1150,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1150,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_V_temperature_Read */
        0x1151,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1151,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1151,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_IGBT_W_temperature_Read */
        0x1152,         /*ECU Software Number of Supplier*/
        1u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_1152,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_1152,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Data_Information_Field_Version_Read */
        0xF182,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F182,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F182,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_OEM_Part_Number_Read */
        0xF187,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F187,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F187,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Calibration_software_information_Read */
        0xF18C,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F18C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F18C,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Hardware_Number_Read */
        0xF192,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F192,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F192,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Hardware_Version_Number_Read */
        0xF193,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F193,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F193,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Software_Number_Read */
        0xF194,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F194,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F194,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Software_Version_Number_Read */
        0xF195,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F195,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F195,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_Programming_Date_Read */
        0xF199,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F199,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F199,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        1u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_read_write_0 */
        0x100,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_0100,
        Rte_DidConditionCheckWrite_0100,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_0100,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_0100,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_read_write_3 */
        0xF19D,         /*ECU Software Number of Supplier*/
        4u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F19D,
        Rte_DidConditionCheckWrite_F19D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F19D,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_F19D,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_read_write_4 */
        0xF1A0,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F1A0,
        Rte_DidConditionCheckWrite_F1A0,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F1A0,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_F1A0,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_read_write_5 */
        0xF1A1,         /*ECU Software Number of Supplier*/
        16u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F1A1,
        Rte_DidConditionCheckWrite_F1A1,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F1A1,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_F1A1,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_read_write_2 */
        0xF198,         /*ECU Software Number of Supplier*/
        10u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F198,
        Rte_DidConditionCheckWrite_F198,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F198,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_F198,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    },
    { /* RQ_RQ_read_write_1 */
        0xF190,         /*ECU Software Number of Supplier*/
        17u,            /*DcmDspDidSize*/
        Rte_DidConditionCheckRead_F190,
        Rte_DidConditionCheckWrite_F190,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidReadData_F190,
        NULL_PTR,
        NULL_PTR,
        NULL_PTR,
        Rte_DidWriteData_F190,
        2u,            /*DcmDspDidInfo array subscript*/
        0u,
        NULL_PTR,
        0u,
        NULL_PTR
    }      
};

/***********************************************
 ***DcmDspEcuReset container configration*******
 ***********************************************/
STATIC  CONST(Dcm_EcuResetType,DCM_CONST)Dcm_EcuResetPort[1]=
{
    Rte_EcuReset,
};

STATIC  CONST(uint8,DCM_CONST)Dcm_DspEcuReset_HardReset_Reset_RefSecCfg[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_DspEcuReset_HardReset_Reset_RefSesCfg[2] = {1,3};
STATIC  CONST(Dcm_DspEcuResetType,DCM_CONST)Dcm_DspEcuResetCfg[1]=
{
    { /* HardReset_Reset */
        1u,    /*ResetType=hard reset */
        2u,
        &Dcm_DspEcuReset_HardReset_Reset_RefSecCfg[0],
        2u,
        &Dcm_DspEcuReset_HardReset_Reset_RefSesCfg[0],
    }
};



/*************************************************
 ************DcmDspReadDTC container configration
 *************************************************/


CONST(Dcm_DspReadDTCType,DCM_CONST)Dcm_DspReadDTCCfg =
{
    0u,
    NULL_PTR
};


/*************************************************
 *****DcmDspRoutine container configration********
 *************************************************/
/***********************************
 *DcmDspRoutineAuthorization container
 **********************************/

/***********************************
 *DcmDspRoutineStart container
 **********************************/

/***********************************
 *DcmDspRoutineStop container
 **********************************/

/***********************************
 *DcmDspRoutineRequestRes container configration
 **********************************/
/*In the the response of RequestResult,the size of the number of bytes for Optional record  */


/***********************************
 *DcmDspRoutine container configration
 **********************************/

/***********************************
 *DcmDspTestResultByObdmid container configration
 **********************************/
CONST(Dcm_DspTestResultTidType,DCM_CONST)Dcm_DspTestResultTidCfg[1] =
{ 
    {
        0x00,  /* DcmDspTestResultTestId */
        0x00,  /* DcmDspTestResultUaSid */
    }      
};

CONST(uint8,DCM_CONST)Dcm_DspDcmDspTestResultObdmidTidCfg[1] = {0}; /* TIDs of DcmDspTestResultObdmidTid */

CONST(Dcm_DspTestResultObdmidTidType,DCM_CONST)Dcm_DspTestResultObdmidTidCfg[1] =
{ 
	
    {
    	0x00,  /* DcmDspTestResultObdMid */
        1u,
        &Dcm_DspDcmDspTestResultObdmidTidCfg[0],
    }      
};

CONST(Dcm_DspTestResultByObdmidType,DCM_CONST)Dcm_DspTestResultByObdmidCfg[1] =
{ 
    {
		1u,
		&Dcm_DspTestResultObdmidTidCfg[0],
		1u,
		&Dcm_DspTestResultTidCfg[0],
    }    
}; 


/************************************************
 *******DcmDsp container configration(Multiplicity=1)**
 ************************************************/
CONST(Dcm_DspCfgType,DCM_CONST)Dcm_DspCfg =
{
    0, /*Indicates the maximum allowed DIDs in a single "ReadDataByIdentifier" request. If set to 0, then no limitation is applied. */
    87u,
    &Dcm_DspDidCfg[0],    /* Dids */
    3u,
    &Dcm_DspDidInfoCfg[0], /* Did Infos*/
    1u,
    &Dcm_DspEcuResetCfg[0],/* Resets */ 
    1u,
    &Dcm_EcuResetPort[0],   /* Resets Callback*/
    &Dcm_DspReadDTCCfg,        /* Read DTCs */
    &Dcm_DspSecurity,  /* Security levels */
    &Dcm_DspSession,  /* Sessions */
    1u,
    &Dcm_DspTestResultByObdmidCfg[0],  /* Test Result By OBD Monitor id */
};
/*****************************************************************************************
 ********************************* DSD container configration*****************************
 *****************************************************************************************/
/**********************************************************************/
/******UDS Service session and security configration******/
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_DiagnosticSessionControl_SecRef[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_DiagnosticSessionControl_SesRef[2] = {1,3};  
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_ReadDataByIdentifier_SecRef[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_ReadDataByIdentifier_SesRef[2] = {1,3};  
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_WriteDataByIdentifier_SecRef[1] = {1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_WriteDataByIdentifier_SesRef[1] = {3};  
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_SecurityAccess_SecRef[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_SecurityAccess_SesRef[1] = {3};  
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_ECUReset_SecRef[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_ECUReset_SesRef[1] = {3};  
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_TesterPresent_SecRef[2] = {0,1};
STATIC  CONST(uint8,DCM_CONST)Dcm_ODXServiceTable_TesterPresent_SesRef[2] = {1,3};  
/**********************************************************************/
STATIC CONST(Dcm_DsdServiceCfgType,DCM_CONST)Dcm_Dsd_ODXServiceTable_ServiceTable_Service[6] =
{
    { /* DiagnosticSessionControl */
        0x10u,
        TRUE,
        2u,
        &Dcm_ODXServiceTable_DiagnosticSessionControl_SecRef[0],
        2u,
        &Dcm_ODXServiceTable_DiagnosticSessionControl_SesRef[0],
        DCM_ADDRESSING_PHYANDFUNC,
        DspInternal_UDS0x10,
    },
    { /* ReadDataByIdentifier */
        0x22u,
        FALSE,
        2u,
        &Dcm_ODXServiceTable_ReadDataByIdentifier_SecRef[0],
        2u,
        &Dcm_ODXServiceTable_ReadDataByIdentifier_SesRef[0],
        DCM_ADDRESSING_PHYANDFUNC,
        DspInternal_UDS0x22,
    },
    { /* WriteDataByIdentifier */
        0x2Eu,
        FALSE,
        1u,
        &Dcm_ODXServiceTable_WriteDataByIdentifier_SecRef[0],
        1u,
        &Dcm_ODXServiceTable_WriteDataByIdentifier_SesRef[0],
        DCM_ADDRESSING_PHYANDFUNC,
        DspInternal_UDS0x2E,
    },
    { /* SecurityAccess */
        0x27u,
        TRUE,
        2u,
        &Dcm_ODXServiceTable_SecurityAccess_SecRef[0],
        1u,
        &Dcm_ODXServiceTable_SecurityAccess_SesRef[0],
        DCM_ADDRESSING_PHYANDFUNC,
        DspInternal_UDS0x27,
    },
    { /* ECUReset */
        0x11u,
        TRUE,
        2u,
        &Dcm_ODXServiceTable_ECUReset_SecRef[0],
        1u,
        &Dcm_ODXServiceTable_ECUReset_SesRef[0],
        DCM_ADDRESSING_FUNCTION,
        DspInternal_UDS0x11,
    },
    { /* TesterPresent */
        0x3Eu,
        TRUE,
        2u,
        &Dcm_ODXServiceTable_TesterPresent_SecRef[0],
        2u,
        &Dcm_ODXServiceTable_TesterPresent_SesRef[0],
        DCM_ADDRESSING_PHYANDFUNC,
        DspInternal_UDS0x3E,
    }  
};

/**********************************************************************/
/*DCM Support Service Table(Multiplicity=1..256)*/
STATIC  CONST(Dcm_DsdServiceTableCfgType,DCM_CONST)Dcm_DsdServiceTable[DCM_SERVICE_TAB_NUM]=
{
    {
        0x0,
        &Dcm_Dsd_ODXServiceTable_ServiceTable_Service[0],
		DCM_UDS_SERVICE_NUM
    }
};

/**********************************************************************/
/*Dsd container(Multiplicity=1)*/
CONST(Dcm_DsdCfgType,DCM_CONST)Dcm_DsdCfg =
{
    &Dcm_DsdServiceTable[0],
    DCM_SERVICE_TAB_NUM
};

/*****************************************************************************************
 ********************************* DSL container configration*****************************
 *****************************************************************************************/
/*DcmDslBuffer container(Multiplicity=1..256)*/
STATIC  CONST(Dcm_DslBufferType,DCM_CONST)Dcm_DslBufferCfg[DCM_CHANNEL_NUM] =
{
    {
        0x0u, 
        128u,
        0u
    },
    {
        0x1u, 
        128u,
        128u
    }
};

/***********************************/
/*DcmDslDiagResp container(Multiplicity=1)*/
STATIC  CONST(Dcm_DslDiagRespType,DCM_CONST)Dcm_DslDiagRespCfg =
{
    DCM_DSLDIAGRESP_FORCERESPENDEN,
    3u
};

/*****************************************************
 *DcmDslCallbackDCMRequestService port configration(Multiplicity=1..*)
 *****************************************************/
STATIC  CONST(Dcm_DslCallbackDCMRequestServiceType,DCM_CONST)Dcm_DslCallbackDCMRequestServiceCfg[1] =
{
    {
        Rte_StartProtocol,
        Rte_StopProtocol
    }
};

/*****************************************************
 *DcmDslSessionControl port configration(Multiplicity=1..*)*******
 ****************************************************/
STATIC  CONST(Dcm_DslSessionControlType,DCM_CONST)Dcm_DslSessionControlCfg[1]=
{
    {
        Rte_DcmSessChgIndication,
        Rte_DcmGetSessChgPermission
    }
};

/*****************************************************
 *DcmDslServiceRequestIndication port configration(Multiplicity=0..*)*
 ****************************************************/
STATIC  CONST(Dcm_ServiceRequestIndicationType,DCM_CONST)Dcm_ServiceRequestIndicationCfg[1] =
{
    {
        Rte_DcmServiceReqIndication
    }
};

/*****************************************************
 ****DcmDslProtocolTiming container(Multiplicity=1)***********
 ****************************************************/
CONST(Dcm_DslProtocolTimingRowType,DCM_CONST)Dcm_DslProtocolTimingRowCfg[1] =
{
    {
        50U,  	/*P2ServerMax*/
        0U,
        5000U,	/* P2StarServerMax */
        0U,
        5000U	/*S3Server*/
    }
};

CONST(Dcm_DslProtocolTimingType,DCM_CONST)Dcm_DslProtocolTimingCfg=
{
    &Dcm_DslProtocolTimingRowCfg[0],
    1u,
};

/******************************************************
 *************DcmDslConnection container***************
 *****************************************************/

/********************UDS protocal Connection configration*******************/
/*Connection1,Mainconnection,ProtocolRx configration(Multiplicity=1..*)*/
STATIC  CONST(Dcm_DslProtocolRxType,DCM_CONST)Dcm_Diag_CAN_Connection_0_RxCfg[2]=
{
    {
        DCM_PHYSICAL,       /*DcmDslProtocolRxAddrType*/
        0x0u,              /*DcmDslProtocolRxPduId*/
    },
    {
        DCM_FUNCTIONAL,       /*DcmDslProtocolRxAddrType*/
        0x1u,              /*DcmDslProtocolRxPduId*/
    }
};

/*Connection1,Mainconnection,ProtocolTx configration(Multiplicity=1..*)*/
STATIC  CONST(Dcm_DslMainConnectionType,DCM_CONST) Dcm_Diag_CAN_Connection_0Cfg =
{
    NULL_PTR,
    NULL_PTR,
    &Dcm_Diag_CAN_Connection_0_RxCfg[0], /*pDcmDslProtocolRx*/
    2u,                     /*DcmDslProtocolRx_Num*/
    0x0u                  /*DcmDslProtocolTxPduId*/
};

/*Connection1 configration*/
STATIC  CONST(Dcm_DslConnectionType,DCM_CONST)Dcm_Dsl_Diag_CAN_ConnectionCfg[1]=
{
    {
        &Dcm_Diag_CAN_Connection_0Cfg,  /*pDcmDslMainConnection*/
        NULL_PTR,         /*pDcmDslPeriodicTransmission*/
        NULL_PTR          /*pDcmDslResponseOnEvent*/
    }
};
/*****************************************************
 ****Dcm_DslProtocolRow container configration(Multiplicity=1..*)*******
 ****************************************************/
STATIC  CONST(Dcm_DslProtocolRowType,DCM_CONST)Dcm_DslProtocolRowCfg[DCM_DSLPROTOCOLROW_NUM_MAX] =
{
    {
        DCM_UDS_ON_CAN,			/*DcmDslProtocolID*/
        FALSE,					/*DcmDslProtocolIsParallelExecutab*/
        0u,					/*DcmDslProtocolPreemptTimes*/
        0u,						/*DcmDslProtocolPriority*/
        DCM_PROTOCOL_TRAN_TYPE1,/*DcmDslProtocolTransType*/
        0x0,					/*DcmDslProtocolRxBufferID*/
        0x1,					/*DcmDslProtocolTxBufferID*/
        0x0, 					/*DcmDslServiceTableID*/
        &Dcm_DslProtocolTimingRowCfg[0],			    /*pDcmDslProtocolTimeLimit*/
        &Dcm_Dsl_Diag_CAN_ConnectionCfg[0],/*DcmDslConnection*/
        1u,		/*Number of connection*/
    }
};

/*****************************************************
 *DcmDslProtocol container configration(Multiplicity=1)
 ****************************************************/
STATIC  CONST(Dcm_DslProtocolType,DCM_CONST)Dcm_DslProtocol =
{
    &Dcm_DslProtocolRowCfg[0],
    DCM_DSLPROTOCOLROW_NUM_MAX,
};

/*****************************************************
 ****************DcmDsl container configration*****
 ****************************************************/
CONST(Dcm_DslCfgType,DCM_CONST)Dcm_DslCfg =
{
    DCM_CHANNEL_NUM,				/*Number of Channel configration*/
    &Dcm_DslBufferCfg[0],

    1u,	/*Number of DslCallbackDCMRequestService port*/
    &Dcm_DslCallbackDCMRequestServiceCfg[0],
    1u,			/*Number of ServiceRequestIndication port*/
    &Dcm_ServiceRequestIndicationCfg[0],
    1u,			/*Number of SessionControl port*/
    &Dcm_DslSessionControlCfg[0], /*reference to SessionControl port configration*/

    &Dcm_DslDiagRespCfg,          /*reference to DcmDslDiagResp configration*/
    &Dcm_DslProtocol,             /*reference to DcmDslProtocol configration*/
    &Dcm_DslProtocolTimingCfg
};

#define  DCM_STOP_SEC_CONST_UNSPECIFIED
#include "MemMap.h"